// import { PropType } from 'vue'
// import {
//   BwStyleAlignItemsEnum,
//   BwStyleCursorEnum,
//   BwStyleDisplayEnum,
//   BwStyleFlexDirectionEnum,
//   BwStyleFontStyleEnum,
//   BwStyleJustifyContentEnum,
//   BwStyleTextAlignEnum,
//   BwStyleTextDecorationEnum,
//   BwStyleBorderStyleEnum,
//   BwStyleBackgroundAttachmentEnum,
//   BwStyleBackgroundRepeatEnum,
//   BwStyleBackgroundSizeEnum,
// } from '../enum'

export const BwStyleFocusBaseProps = {
  /** 宽度 */
  focusWidth: {
    type: [String],
  },

  /** 高度 */
  focusHeight: {
    type: [String],
  },

  /** 显示 */
  focusDisplay: {
    type: [String],
  },

  /** flex-grow */
  focusFlexGrow: {
    type: [Number],
  },

  /** 不透明度 */
  focusOpacity: {
    type: [Number],
  },

  /** 鼠标手势 */
  focusCursor: {
    type: [String],
  },
}

/** 字体相关样式属性 */
export const BwStyleFocusFontProps = {
  /** 字体 */
  focusFontFamily: {
    type: [String],
  },
  /** 字重 */
  focusFontWeight: {
    type: [String, Number],
  },
  /** 字体样式 */
  focusFontStyle: {
    type: [String],
  },
  /** 颜色 */
  focusColor: {
    type: [String],
  },
  /** 字体大小 */
  focusFontSize: {
    type: [String],
  },
  /** 行高 */
  focusLineHeight: {
    type: [String],
  },
  /** 对齐 */
  focusTextAlign: {
    type: [String],
  },
  /** 修饰 */
  focusTextDecoration: {
    type: [String],
  },
}

/** 弹性盒子相关样式属性 */
export const BwStyleFocusFlexProps = {
  /** 主轴方向 */
  focusFlexDirection: {
    type: [String],
  },
  /** 侧轴（纵轴）方向上的对齐方式 */
  focusAlignItems: {
    type: [String],
  },
  /** 主轴上的子元素排列方式 */
  focusAustifyContent: {
    type: [String],
  },
}

/** 外边距相关样式属性 */
export const BwStyleFocusMarginProps = {
  /** 左外边距 */
  focusMarginLeft: {
    type: [String],
  },
  /** 上外边距 */
  focusMarginTop: {
    type: [String],
  },
  /** 右外边距 */
  focusMarginRight: {
    type: [String],
  },
  /** 下外边距 */
  focusMarginBottom: {
    type: [String],
  },
}

/** 内边距相关样式属性 */
export const BwStyleFocusPaddingProps = {
  /** 左内边距 */
  focusPaddingLeft: {
    type: [String],
  },
  /** 上内边距 */
  focusPaddingTop: {
    type: [String],
  },
  /** 右内边距 */
  focusPaddingRight: {
    type: [String],
  },
  /** 下内边距 */
  focusPaddingBottom: {
    type: [String],
  },
}

/** 边框相关样式属性 */
export const BwStyleFocusBorderProps = {
  /** 边框左 线样式 */
  focusBorderLeftStyle: {
    type: [String],
  },
  /** 边框左 宽度 */
  focusBorderLeftWidth: {
    type: [String],
  },
  /** 边框左 颜色 */
  focusBorderLeftColor: {
    type: [String],
  },
  /** 边框上 线样式 */
  focusBorderTopStyle: {
    type: [String],
  },
  /** 边框上 宽度 */
  focusBorderTopWidth: {
    type: [String],
  },
  /** 边框上 颜色 */
  focusBorderTopColor: {
    type: [String],
  },
  /** 边框右 线样式 */
  focusBorderRightStyle: {
    type: [String],
  },
  /** 边框右 宽度 */
  focusBorderRightWidth: {
    type: [String],
  },
  /** 边框右 颜色 */
  focusBorderRightColor: {
    type: [String],
  },
  /** 边框下 线样式 */
  focusBorderBottomStyle: {
    type: [String],
  },
  /** 边框下 宽度 */
  focusBorderBottomWidth: {
    type: [String],
  },
  /** 边框下 颜色 */
  focusBorderBottomColor: {
    type: [String],
  },
}

/** 圆角相关样式属性 */
export const BwStyleFocusRadiusProps = {
  /** 圆角左上角*/
  focusBorderTopLeftRadius: {
    type: [String],
  },
  /** 圆角右上角*/
  focusBorderTopRightRadius: {
    type: [String],
  },
  /** 圆角左下角*/
  focusBorderBottomLeftRadius: {
    type: [String],
  },
  /** 圆角右下角*/
  focusBorderBottomRightRadius: {
    type: [String],
  },
}

/** 阴影相关样式属性 */
export const BwStyleFocusShadowProps = {
  /** 颜色 */
  focusShadowColor: {
    type: [String],
  },
  /** x轴水平方向偏移量 */
  focusShadowX: {
    type: [String],
  },
  /** y轴竖直方向偏移量 */
  focusShadowY: {
    type: [String],
  },
  /** 阴影模糊半径 */
  focusShadowBlur: {
    type: [String],
  },
  /** 阴影扩展半径 */
  focusShadowSpread: {
    type: [String],
  },
}

/** 背景相关样式属性 */
export const BwStyleFocusBackgroundProps = {
  /** 背景颜色 */
  focusBackgroundColor: {
    type: [String],
  },
  /** 背景图片 */
  focusBackgroundImage: {
    type: [String],
  },
  /** 背景定位 X轴 */
  focusBackgroundPositionX: {
    type: [String],
  },
  /** 背景定位 Y轴 */
  focusBackgroundPositionY: {
    type: [String],
  },
  /** 背景大小 */
  focusBackgroundSize: {
    type: [String],
  },
  /** 背景大小 宽 */
  focusBackgroundSizeWidth: {
    type: [String],
  },
  /** 背景大小 高 */
  focusBackgroundSizeHeight: {
    type: [String],
  },
  /** 背景平铺 */
  focusBackgroundRepeat: {
    type: [String],
  },
  /** 背景固定 */
  focusBackgroundAttachment: {
    type: [String],
  },
}

/** 通用渲染样式属性 */
export const BwStyleFocusProps = {
  ...BwStyleFocusBaseProps,
  ...BwStyleFocusFontProps,
  ...BwStyleFocusFlexProps,
  ...BwStyleFocusMarginProps,
  ...BwStyleFocusPaddingProps,
  ...BwStyleFocusBorderProps,
  ...BwStyleFocusRadiusProps,
  ...BwStyleFocusShadowProps,
  ...BwStyleFocusBackgroundProps,
}
